package co.edu.udea.xyz.bl;

import java.util.List;

import co.edu.udea.xyz.dto.Producto;
import co.edu.udea.xyz.util.exception.BLInversionesException;
import co.edu.udea.xyz.util.exception.XYZException;

public interface ProductoService {
	
	/**
	 * Metodo que obtiene la lista de productos de la base de datos.
	 * @return Lista de Productos
	 * @throws BLInversionesException
	 * @throws XYZException
	 */
	public List<Producto> obtenerListaProductos() throws BLInversionesException, XYZException;
	
	/**
	 * Metodo que permite guardar un producto en la base de datos
	 * @param producto
	 * @throws BLInversionesException
	 * @throws XYZException
	 */
	public void guardarProducto(int idProducto, String estado, String nombre, String marca, String precio) throws BLInversionesException, XYZException;
	
	/**
	 * Metdo que permite actualizar un producto	 en la base de datos
	 * @param cliente
	 * @param cedula
	 * @throws BLInversionesException
	 * @throws XYZException
	 */
	public void actualizarProducto(int idProducto, String estado, String nombre, String marca, String precio)throws BLInversionesException, XYZException;
	
	/**
	 * Metodo que permite obtener un producto de la base de datos.
	 * @param cliente
	 * @return Producto
	 * @throws BLInversionesException
	 * @throws XYZException
	 */
	public Producto obtenerProducto(int idProducto)throws BLInversionesException, XYZException;

}
